package scalatags
package text
import acyclic.file
trait Tags extends generic.Tags[Builder, String, String]{
  // Root Element
  val html = "html".tag[String]
  // Document Metadata
  val head = "head".tag[String]
  val base = "base".voidTag[String]
  val link = "link".voidTag[String]
  val meta = "meta".voidTag[String]
  // Scripting
  val script = "script".tag[String]
  // Sections
  val body = "body".tag[String]
  val h1 = "h1".tag[String]
  val h2 = "h2".tag[String]
  val h3 = "h3".tag[String]
  val h4 = "h4".tag[String]
  val h5 = "h5".tag[String]
  val h6 = "h6".tag[String]
  val header = "header".tag[String]
  val footer = "footer".tag[String]
  // Grouping content
  val p = "p".tag[String]
  val hr = "hr".voidTag[String]
  val pre = "pre".tag[String]
  val blockquote = "blockquote".tag[String]
  val ol = "ol".tag[String]
  val ul = "ul".tag[String]
  val li = "li".tag[String]
  val dl = "dl".tag[String]
  val dt = "dt".tag[String]
  val dd = "dd".tag[String]
  val figure = "figure".tag[String]
  val figcaption = "figcaption".tag[String]
  val div = "div".tag[String]
  // Text-level semantics
  val a = "a".tag[String]
  val em = "em".tag[String]
  val strong = "strong".tag[String]
  val small = "small".tag[String]
  val s = "s".tag[String]
  val cite = "cite".tag[String]
  val code = "code".tag[String]
  val sub = "sub".tag[String]
  val sup = "sup".tag[String]
  val i = "i".tag[String]
  val b = "b".tag[String]
  val u = "u".tag[String]
  val span = "span".tag[String]
  val br = "br".voidTag[String]
  val wbr = "wbr".voidTag[String]
  // Edits
  val ins = "ins".tag[String]
  val del = "del".tag[String]
  // Embedded content
  val img = "img".voidTag[String]
  val iframe = "iframe".tag[String]
  val embed = "embed".voidTag[String]
  val `object` = "object".tag[String]
  val param = "param".voidTag[String]
  val video = "video".tag[String]
  val audio = "audio".tag[String]
  val source = "source".voidTag[String]
  val track = "track".voidTag[String]
  val canvas = "canvas".tag[String]
  val map = "map".tag[String]
  val area = "area".voidTag[String]
  // Tabular data
  val table = "table".tag[String]
  val caption = "caption".tag[String]
  val colgroup = "colgroup".tag[String]
  val col = "col".voidTag[String]
  val tbody = "tbody".tag[String]
  val thead = "thead".tag[String]
  val tfoot = "tfoot".tag[String]
  val tr = "tr".tag[String]
  val td = "td".tag[String]
  val th = "th".tag[String]
  // Forms
  val form = "form".tag[String]
  val fieldset = "fieldset".tag[String]
  val legend = "legend".tag[String]
  val label = "label".tag[String]
  val input = "input".voidTag[String]
  val button = "button".tag[String]
  val select = "select".tag[String]
  val datalist = "datalist".tag[String]
  val optgroup = "optgroup".tag[String]
  val option = "option".tag[String]
  val textarea = "textarea".tag[String]
}
